1. Field of the Invention
The present invention relates generally to vocoders, and more particularly, to an apparatus and method for determining a speech-encoding rate in a variable rate vocoder capable of encoding speech at several rates.
2. Description of the Related Art
Variable rate vocoders can potentially encode speech using fewer bits than fixed-rate vocoders with comparable quality. Variable-rate vocoders achieve this bit-rate reduction by encoding each segment of a speech signal with a number of bits that is related to the signal""s properties. For instance, pauses in the speech signal will typically be encoded with fewer bits than high-energy speech.
By making bit-rate decisions frequently, using short segments of speech (e.g. 20 millisecond segments), a variable rate vocoder can produce high quality encoded speech. Ultimately, however, the quality of the compressed speech produced by a variable-rate vocoder depends on the compression algorithm itself as well as the algorithm used to choose the encoding bit rate.
One example of a variable rate vocoder is the Enhanced Variable Rate Codec (EVRC) described in the International Telecommunications Union (ITU) interim standard IS-127. The IS-127 rate-decision algorithm is an example of a speech-activity-based technique. The IS-127 rate decision algorithm determines the rate at which the current frame of 160 speech samples (of duration 20 ms) will be encoded. The algorithm bases its decisions on the first 17 bandwidth-expanded autocorrelation coefficients of the current frame and the gain of a long term predictor.
The IS-127 rate-decision algorithm requires processing in two different frequency bands, which are determined by a band-splitting filter. According to the IS-127 rate-decision algorithm, the rate decision is implemented independently in each of two frequency bands and the high rate between them is selected. Then, the selected rate is modified to take into account hangover constraints and minimum and maximum rate constraints to thereby determine a final rate. The hangover and the other constraints are provided from an external controller.
According to the algorithm, in each frequency band, a threshold is used for the rate decision. The threshold is computed using a signal-to-noise ratio (SNR) and background noise energy. The SNR calculation requires an accurate estimate of the average signal level. Additionally, the IS-127 rate decision algorithm has a high computational complexity.
It is an object of the present invention to provide an apparatus and method for determining a speech-encoding rate with features that eliminate the need for an accurate estimate of a signal-to-noise ratio and the bandsplitting as required in the IS-127 rate decision algorithm (RDA).
A further object of the present invention is to reduce the computational complexity of the IS-127 rate decision algorithm.
To achieve the above and other objects of the present invention there is provided an apparatus and method for determining a speech-encoding rate in a variable rate vocoder. A set of thresholds are computed based on background noise energy and its variation. A signal energy value of an input signal is computed, and a rate decision is made based on comparisons of the computed signal energy value with the computed thresholds. In one embodiment, a preliminary rate and a hangover interval are first computed based on the comparisons. The preliminary rate decision is then modified to take into account hangover constraints, a long term prediction gain and minimum and maximum rate constraints.